/**
 * LOCAL_TEST_COMPONENTS 标准配置模板
 * Phase 5 集成验证关键配置
 *
 * 用途：注册本地AI组件到左侧菜单系统
 * 位置：src/constants/constants.ts
 *
 * @template Phase5/ComponentRegistration
 * @version 2.0.0
 * @author AI Assistant
 * @date 2025-11-10
 */

// 重要：确保 groupCode 与现有系统分组匹配
// 通过以下命令查找现有分组：
// grep -r "groupCode.*TELECOM\|groupName.*Telecom" src/

export const LOCAL_TEST_COMPONENTS = [
  {
    // 分组配置
    groupId: -201,                    // 负数ID表示本地组件
    groupName: 'Telecom',             // 必须与现有分组名完全一致
    groupCode: 'TELECOM',             // 必须与现有分组代码完全一致

    // 子分组列表
    subGroupList: [
      {
        groupId: -202,
        groupName: 'Query',           // 必须是现有子分组名
        componentList: [
          {
            // === 核心标识 ===
            componentCode: 'UsageTrendsProd2',          // 组件唯一标识
            componentName: 'Usage Trends Dashboard2',   // 显示名称

            // === 分类标识 ===
            componentType: 'AI',                        // 固定值：标识AI生成组件
            propertiesSource: '1',                      // '1'=本地配置源
            stylesSource: '1',                          // '1'=本地样式源

            // === 平台支持 ===
            applyPageTypes: '2',                        // 重要：字符串格式！
                                                        // '1'=Native, '2'=H5, '3'=RN

            // === 归属信息 ===
            groupCode: 'TELECOM',                       // 归属分组代码（与上级一致）

            // === 显示信息 ===
            icon: 'icon-ic_icon',                       // 图标标识
            thumbnail: '',                              // 缩略图（可选）
            description: '展示近N个月消费/用量趋势的可视化组件，支持多类型Tab切换与hover显示对应月份与数值',

            // === 版本信息 ===
            version: '1.0.0',
            author: 'AI Assistant',
            createTime: '2025-11-10',
            isEnabled: true                             // 是否启用
          }
        ]
      }
    ]
  }
];

/*
配置说明：

1. 分组匹配：
   - groupName 和 groupCode 必须与现有系统分组完全一致
   - 可通过以下命令查找现有分组：
     grep -r "groupName.*Telecom" src/pages/newPageList/NewBtn.tsx

2. 字段类型：
   - applyPageTypes: 必须是字符串 '1'/'2'/'3'，不能是数字
   - componentType: 固定为 'AI'，用于标识本地AI组件
   - propertiesSource/stylesSource: '1'表示本地配置

3. 三层架构对应：
   - componentCode: 在 Fields/Edit/Preview 三层中保持一致
   - 确保在 aiComponents.ts 中有对应配置

4. 常见错误：
   ❌ groupCode: 'telecomComponents' (与系统不匹配)
   ✅ groupCode: 'TELECOM' (与系统匹配)

   ❌ applyPageTypes: 2 (数字格式)
   ✅ applyPageTypes: '2' (字符串格式)

验证清单：
□ groupCode 与现有分组匹配
□ groupName 与现有分组匹配
□ 子分组 groupName 存在于目标分组中
□ componentCode 唯一且有意义
□ applyPageTypes 使用字符串格式
□ componentType 设置为 'AI'
□ 三层架构配置完整对应

示例扩展（添加更多组件）：

export const LOCAL_TEST_COMPONENTS = [
  {
    groupId: -201,
    groupName: 'Telecom',
    groupCode: 'TELECOM',
    subGroupList: [
      {
        groupId: -202,
        groupName: 'Query',
        componentList: [
          // 第一个组件
          {
            componentCode: 'UsageTrendsProd2',
            componentName: 'Usage Trends Dashboard2',
            // ... 其他配置
          },
          // 添加第二个组件
          {
            componentCode: 'BillingTrendsDashboard',
            componentName: 'Billing Trends Dashboard',
            componentType: 'AI',
            propertiesSource: '1',
            stylesSource: '1',
            applyPageTypes: '2',
            groupCode: 'TELECOM',
            icon: 'icon-ic_billing',
            description: '账单趋势分析组件',
            version: '1.0.0',
            author: 'AI Assistant',
            createTime: '2025-11-10',
            isEnabled: true
          }
        ]
      },
      // 添加新子分组
      {
        groupId: -203,
        groupName: 'Analytics',  // 确保此子分组在 Telecom 分组中存在
        componentList: [
          {
            componentCode: 'DataAnalyticsDashboard',
            componentName: 'Data Analytics Dashboard',
            // ... 配置
          }
        ]
      }
    ]
  },
  // 添加新分组（如果系统中不存在，会创建新分组）
  {
    groupId: -301,
    groupName: 'AI Components',
    groupCode: 'AI_COMPONENTS',
    subGroupList: [
      // ... 子分组配置
    ]
  }
];
*/